/**
 * @param {string[]} words
 * @return {string[]}
 */
var removeAnagrams = function (words) {
  // 如果数组长度小于2，直接返回原数组
  if (words.length <= 1) return words;

  // 辅助函数：判断两个字符串是否是字母异位词
  const isAnagram = (s, t) => {
    // 长度不同，直接返回false
    if (s.length !== t.length) return false;

    // 将字符串转换为字符数组并排序，然后比较排序后的结果
    return s.split("").sort().join("") === t.split("").sort().join("");
  };

  // 构建结果数组
  const result = [words[0]];

  // 遍历剩余单词
  for (let i = 1; i < words.length; i++) {
    // 获取结果数组的最后一个元素
    const lastWord = result[result.length - 1];
    // 当前单词
    const currentWord = words[i];

    // 如果当前单词与结果数组最后一个元素不是字母异位词，则添加到结果数组
    if (!isAnagram(lastWord, currentWord)) {
      result.push(currentWord);
    }
  }

  return result;
};

// 测试示例
console.log(removeAnagrams(["abba", "baba", "bbaa", "cd", "cd"])); // 输出: ["abba","cd"]
console.log(removeAnagrams(["a", "b", "c", "d", "e"])); // 输出: ["a","b","c","d","e"]
